package modelo;

import java.util.List;
import java.util.Map;

public class Persona implements Persistible{
	private String nombre;
	private String apellido;
	private String cargo;
	private int tutor;
	private int dni;
	private String cuil;
	private String direccion;
	private String tel_fijo;
	private String tel_movil;
	private String correo;
	private String correo_alt;
	private String localidad;
	private String colonia;
	private String departamento;
	private String observaciones;
	private String equipo;
	//agregar el cue de la escuela tambien

	public Persona(String nombre,String apellido, String cargo, int tutor, int dni,
			String cuil, String direccion, String tel_fijo, String tel_movil,
			String correo, String correo_alt, String localidad, String colonia,
			String departamento, String observaciones,String equipo) {
		super();
		this.nombre = nombre;
		this.apellido = apellido;
		this.cargo = cargo;
		this.tutor = tutor;
		this.dni = dni;
		this.cuil = cuil;
		this.direccion = direccion;
		this.tel_fijo = tel_fijo;
		this.tel_movil = tel_movil;
		this.correo = correo;
		this.correo_alt = correo_alt;
		this.localidad = localidad;
		this.colonia = colonia;
		this.departamento = departamento;
		this.observaciones = observaciones;
		this.equipo = equipo;
	}
	public Persona() {
		super();
		// TODO Auto-generated constructor stub
	}
	
	@Override
	public Object persistir() {
		// TODO Auto-generated method stub
		DataBaseManager dbm = new DataBaseManager();
		return dbm.persisteEntidad(this);		
	}
	
	@Override
	public Object actualizar() {
		// TODO Auto-generated method stub
		DataBaseManager dbm = new DataBaseManager();
		return dbm.actualizarEntidad(this);		
	}
	
	@Override
	public Object eliminar() {
		// TODO Auto-generated method stub
		DataBaseManager dbm = new DataBaseManager();
		return dbm.eliminarEntidad(this);		
	}


	
	public void obtener(){
		DataBaseManager dbm = new DataBaseManager();
		Persona per = (Persona)dbm.getEntidad(this);
		
		this.nombre = per.getNombre();
		this.apellido = per.getApellido();
		this.cargo = per.getCargo();
		this.tutor = per.getTutor();
		this.dni = per.getDni();
		this.cuil = per.getCuil();
		this.direccion = per.getDireccion();
		this.tel_fijo = per.getTel_fijo();
		this.tel_movil = per.getTel_movil();
		this.correo_alt = per.getCorreo_alt();
		this.direccion = per.getDireccion();		
		this.correo = per.getCorreo();		
		this.localidad = per.getLocalidad();
		this.colonia = per.getColonia();
		this.departamento = per.getDepartamento();
		this.observaciones = per.getObservaciones();
		this.equipo = per.getEquipo();
		
	}
	
	@Override
	public List<Object> listar() {
		// TODO Auto-generated method stub
		DataBaseManager dbm = new DataBaseManager();
		return dbm.listarEntidades(this);		
	}
	
	public List<Object> listarXCampos(Map campos) {
		// TODO Auto-generated method stub
		DataBaseManager dbm = new DataBaseManager();
		return dbm.listarEntidadesXCampos(this,campos);		
	}
	
	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public String getApellido() {
		return apellido;
	}
	public void setApellido(String ape) {
		this.apellido = ape;
	}
	public String getCargo() {
		return cargo;
	}
	public void setCargo(String cargo) {
		this.cargo = cargo;
	}
	public int getTutor() {
		return tutor;
	}
	public void setTutor(int tutor) {
		this.tutor = tutor;
	}
	public int getDni() {
		return dni;
	}
	public void setDni(int dni) {
		this.dni = dni;
	}
	public String getCuil() {
		return cuil;
	}
	public void setCuil(String cuil) {
		this.cuil = cuil;
	}
	public String getDireccion() {
		return direccion;
	}
	public void setDireccion(String direccion) {
		this.direccion = direccion;
	}
	public String getTel_fijo() {
		return tel_fijo;
	}
	public void setTel_fijo(String tel_fijo) {
		this.tel_fijo = tel_fijo;
	}
	public String getTel_movil() {
		return tel_movil;
	}
	public void setTel_movil(String tel_movil) {
		this.tel_movil = tel_movil;
	}
	public String getCorreo() {
		return correo;
	}
	public void setCorreo(String correo) {
		this.correo = correo;
	}

	public String getCorreo_alt() {
		return correo_alt;
	}
	public void setCorreo_alt(String correo_alt) {
		this.correo_alt = correo_alt;
	}
	public String getLocalidad() {
		return localidad;
	}
	public void setLocalidad(String localidad) {
		this.localidad = localidad;
	}
	public String getColonia() {
		return colonia;
	}
	public void setColonia(String colonia) {
		this.colonia = colonia;
	}
	public String getDepartamento() {
		return departamento;
	}
	public void setDepartamento(String departamento) {
		this.departamento = departamento;
	}
	public String getObservaciones() {
		return observaciones;
	}
	public void setObservaciones(String observaciones) {
		this.observaciones = observaciones;
	}
	public String getEquipo() {
		return equipo;
	}
	public void setEquipo(String equipo) {
		this.equipo = equipo;
	}
	public String getPlural(){
		return "personas";
	}
	
	public String getSingular(){
		return "persona";
	}
	
	public String getKeyField(){
		return "dni";
	}
}
